package com.jsbj.user.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jsbj.base.ResultBean;
import com.jsbj.user.entities.SysDictData;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;

/**
 * <p>
 * 字典类型数据表 服务类
 * </p>
 *
 * @author jsbj
 * @since 2022-03-07
 */
public interface ISysDictDataService extends IService<SysDictData> {

    List<SysDictData> getDataByKey(String dictKey);

    List<SysDictData> getDataByDictKey(HttpServletRequest request, String inParam);

    String selectDictDescByKeyAndValue(String dictKey, String dicValue);

    SysDictData selectDictDataByKeyAndDesc(String dicKey, String dicDesc);

    ResultBean<String> add(SysDictData sysDictData);

    Integer delete(String id);

    void export(String inParam, HttpServletResponse response) throws IOException;

    List<SysDictData> getSecType();

    IPage<SysDictData> getList(String inParam);

    List<SysDictData> getDataByKeyAndRemark(String dictKey, String systemCode);

    List<SysDictData> getOrgTypePageData();

    List<SysDictData> getDataByDictKeyOnly(String dictKey);

    IPage<SysDictData> getPageDataByDictKey(HttpServletRequest request, String toJSONString);

    Integer deletePost(String id) throws Exception;
}
